La memoria è quella parte del calcolatore dove vengono immagazzinati i programmi ed i dati.L’unità di base della memoria è un numero binario chiamato bit: esso può contenere uno 0 o un 1.Le informazioni digitali si possono memorizzare saltando la differenza fra due valori di una quantità fisica continua (voltaggio o corrente).Solitamente lo zero corrisponde più o meno a 0-1 volt, l’uno a 3-5 volt: risulta più affidabile usare questo tipo di codifica.
GLI INDIRIZZI:
Le memorie si compongono di cedere ognuna delle quali è in grado di memorizzare una parte dell’informazione. Ogni cella a un numero, chiamato indirizzo, che serve come accesso per accedere alle informazioni in essa contenute. Inoltre tutte le celle hanno lo stesso numero di bit, e le celle adiacenti hanno indirizzi consecutivi.(anche gli indirizzi ovviamente sono in binario).
Oggi vengono adottate celle di 8 bit (=1 byte), i byte vengono raggruppati in parole.
Per esempio una macchina a 32 bit avrà 4 byte/parola. Si utilizzano parole in quanto le istruzioni funzionano su parole.
Memorie RAM
Il termine random sta ad indicare non che la lettura delle celle è casuale bensì che il sistema può andare a leggere qualsiasi cella.
Le RAM statiche sono implementate con circuiti simili ai flip-flop D:
Flip Flop D
uso: molto diffuse come memoria cache L2
pregi: sono molto veloci ed hanno tempi di accesso di alcuni nanosecondi, sono scritte elettricamente e mantengono loro contenuto fin tanto c’è alimentazione.
difetti: sono costose e necessitano di sei transistor per ogni bit.
Le RAM dinamiche non utilizzano flip-flop, sono costituite da un insieme di celle ognuna delle quali contiene un transistor ed un piccolo condensatore. Tale condensatore si carica o scarica memorizzando così gli zeri e gli uno.
uso: sono utilizzate come memoria principale
difetti: la carica elettrica le condensatori tende a disperdersi rapidamente e pertanto ogni suo bit deve essere continuamente rinfrescato (riscritto) ogni pochi millisecondi (refresh).Pertanto esse sono molto più lente delle SDRAM avendo accessi di decine di nanosecondi.
pregi: sono più economiche delle SDRAM ed inoltre richiedono solo un transistor di un condensatore per ogni bit e ciò permette una più alta densità.
Tipologie di DRAM:
DRAM FPM (fast page mode : tipo vecchio a matrice di bit)
DRAM EDO (extended data output: dotato di una semplice pipeline)
SDRAM (Syncronous RAM: combinazione di RAM statica dinamica controllata da un clock sincrono)
DRDRAM (Direct Rambus DRAM)
DDR
Memoria RAm
Memorie ROM
In molte applicazioni di programma deve restare memoria che quando manca alimentazione. Tale necessità hanno portato lo sviluppo delle ROM (Read only memory).
ROM:
Sono memorie solo leggibili, scritte con materiale fotosensibile e non cancellabili.
pregi: che non sono molto meno costoso del RAM
difetti: sono molto meno flessibili delle RAM
PROM (programmable ROM):
Contengono una serie di fusibili che se bruciati con un alto voltaggio riproducono l’associazione dei bit voluta.sono dunque programmabili una sola volta.
EPROM (Erasable PROM):
possono essere programmate e cancellate dall’utente e per questo si rivelano adatte al prototipaggio.
pregi: hanno la peculiarità di essere cancellabili grazie alla luce ultravioletta
difetti: per cancellarle è necessario estrarle dal circuito
EEPROM:
invece che utilizzare i raggi ultravioletti è possibile cancellarle tramite impulsi elettrici a scapito di una minore velocità rispetto alle EPROM. La regina della categoria è senza dubbio diventata la memoria flash.